package com.ruoyi.invoice.dto;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.invoice.domain.InvoiceTemplateDetail;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @BelongsProject: RuoYi-Cloud-master
 * @BelongsPackage: com.ruoyi.invoice.dto
 * @Author: songYuHang
 * @CreateTime: 2025-03-05  18:57
 * @Description: TODO
 * @Version: 1.0
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class InvoiceTemplateDTO {

    private static final long serialVersionUID = 1L;

    /** ID */
    private Long templateId;

    /** 模版编码 */
    private String stencilCoding;

    /** 模版名称 */
    @NotBlank(message = "模版名称不能为空")
    private String templateName;

    /** 凭证字ID */
    @NotNull(message = "凭证字不能为空")
    private Long wordId;

    /** 业务类型ID */
    @NotNull(message = "业务类型不能为空")
    private Long businessTypeId;

    /** 借方科目名称 */
    private String lendSubjectName;

    /** 贷方科目名称 */
    private String loanSubjectName;

    /** 摘要名称 */
    private String summaryName;

    @NotNull(message = "发票模版凭证不能为空")
    private List<InvoiceTemplateDetail> entries;

}
